Web applications may be implemented as a multi-tiered application stack configured in a cluster. For example, a common multi-tiered application may include a database layer, an application server layer and a web application layer. Components within each of these layers may have their own constraints and dependencies. Provisioning and managing the cluster for such a multi-tiered application stack can be difficult and time consuming for an administrator.